package com.ncst.mvcweb.utils;

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.UUID;

public class ImageUtils {
    
    /**
     * 生成图片存储路径
     * @param originalFilename 原始文件名
     * @return 存储路径
     */
    public static String generateImagePath(String originalFilename) {
        // 创建日期目录结构
        LocalDate now = LocalDate.now();
        String datePath = now.format(DateTimeFormatter.ofPattern("yyyy/MM/dd"));
        
        // 生成唯一文件名
        String extension = "";
        if (originalFilename != null && originalFilename.contains(".")) {
            extension = originalFilename.substring(originalFilename.lastIndexOf("."));
        }
        String filename = UUID.randomUUID().toString() + extension;
        
        return datePath + "/" + filename;
    }
    
    /**
     * 检查是否为有效的图片文件
     * @param contentType 文件类型
     * @return 是否为图片
     */
    public static boolean isValidImage(String contentType) {
        return contentType != null && contentType.startsWith("image/");
    }
    
    /**
     * 检查文件大小是否合法
     * @param size 文件大小（字节）
     * @param maxSize 最大大小（字节）
     * @return 是否合法
     */
    public static boolean isValidFileSize(long size, long maxSize) {
        return size <= maxSize;
    }
} 